Micron Document
🎖️GitЯра🎖️


Displaying Raw • Download

feature/node/src/commonMain/kotlin/org/meshtastic/feature/node/component/EnvironmentMetrics.kt a6057f594dee69b0cbfbe7ce662a7d4d53c62f65 (a6057f59) Text, 10.47 KB

T8b949e/*
* Copyright (c) 2026 Meshtastic LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
Tff7b72package T7ee787org.meshtastic.feature.node.component

Tff7b72import T7ee787androidx.compose.foundation.layout.Arrangement
Tff7b72import T7ee787androidx.compose.foundation.layout.FlowRow
Tff7b72import T7ee787androidx.compose.foundation.layout.fillMaxWidth
Tff7b72import T7ee787androidx.compose.runtime.Composable
Tff7b72import T7ee787androidx.compose.ui.Modifier
Tff7b72import T7ee787org.jetbrains.compose.resources.stringResource
Tff7b72import T7ee787org.meshtastic.core.common.util.NumberFormatter
Tff7b72import T7ee787org.meshtastic.core.model.Node
Tff7b72import T7ee787org.meshtastic.core.model.util.UnitConversions
Tff7b72import T7ee787org.meshtastic.core.model.util.UnitConversions.toTempString
Tff7b72import T7ee787org.meshtastic.core.model.util.toSmallDistanceString
Tff7b72import T7ee787org.meshtastic.core.model.util.toSpeedString
Tff7b72import T7ee787org.meshtastic.core.resources.Res
Tff7b72import T7ee787org.meshtastic.core.resources.current
Tff7b72import T7ee787org.meshtastic.core.resources.dew_point
Tff7b72import T7ee787org.meshtastic.core.resources.distance
Tff7b72import T7ee787org.meshtastic.core.resources.gas_resistance
Tff7b72import T7ee787org.meshtastic.core.resources.humidity
Tff7b72import T7ee787org.meshtastic.core.resources.iaq
Tff7b72import T7ee787org.meshtastic.core.resources.ic_dew_point
Tff7b72import T7ee787org.meshtastic.core.resources.ic_radioactive
Tff7b72import T7ee787org.meshtastic.core.resources.ic_soil_moisture
Tff7b72import T7ee787org.meshtastic.core.resources.ic_soil_temperature
Tff7b72import T7ee787org.meshtastic.core.resources.lux
Tff7b72import T7ee787org.meshtastic.core.resources.one_wire_temperature
Tff7b72import T7ee787org.meshtastic.core.resources.pressure
Tff7b72import T7ee787org.meshtastic.core.resources.radiation
Tff7b72import T7ee787org.meshtastic.core.resources.soil_moisture
Tff7b72import T7ee787org.meshtastic.core.resources.soil_temperature
Tff7b72import T7ee787org.meshtastic.core.resources.temperature
Tff7b72import T7ee787org.meshtastic.core.resources.uv_lux
Tff7b72import T7ee787org.meshtastic.core.resources.voltage
Tff7b72import T7ee787org.meshtastic.core.resources.weight
Tff7b72import T7ee787org.meshtastic.core.resources.wind
Tff7b72import T7ee787org.meshtastic.core.ui.icon.AirQuality
Tff7b72import T7ee787org.meshtastic.core.ui.icon.Altitude
Tff7b72import T7ee787org.meshtastic.core.ui.icon.Humidity
Tff7b72import T7ee787org.meshtastic.core.ui.icon.LightMode
Tff7b72import T7ee787org.meshtastic.core.ui.icon.MeshtasticIcons
Tff7b72import T7ee787org.meshtastic.core.ui.icon.Particulate
Tff7b72import T7ee787org.meshtastic.core.ui.icon.PowerSupply
Tff7b72import T7ee787org.meshtastic.core.ui.icon.Pressure
Tff7b72import T7ee787org.meshtastic.core.ui.icon.Temperature
Tff7b72import T7ee787org.meshtastic.core.ui.icon.Voltage
Tff7b72import T7ee787org.meshtastic.core.ui.icon.Weight
Tff7b72import T7ee787org.meshtastic.core.ui.icon.WindDirection
Tff7b72import T7ee787org.meshtastic.feature.node.model.DrawableMetricInfo
Tff7b72import T7ee787org.meshtastic.feature.node.model.VectorMetricInfo
Tff7b72import T7ee787org.meshtastic.proto.Config

Tf0883e@SuppressTb4b4b4(Ta5d6ff"Ta5d6ffCyclomaticComplexMethodTa5d6ff"Tb4b4b4, Ta5d6ff"Ta5d6ffLongMethodTa5d6ff"Tb4b4b4)
Tf0883e@Composable
Tff7b72internal Tff7b72fun Td2a8ffEnvironmentMetricsTb4b4b4(
Te6edf3nodeTb4b4b4: Te6edf3NodeTb4b4b4,
Te6edf3displayUnitsTb4b4b4: Te6edf3ConfigTb4b4b4.Te6edf3DisplayConfigTb4b4b4.Te6edf3DisplayUnitsTb4b4b4,
Te6edf3isFahrenheitTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3vectorMetrics Tff7b72= Te6edf3buildList Tb4b4b4{
Te6edf3withTb4b4b4(Te6edf3nodeTb4b4b4.Te6edf3environmentMetricsTb4b4b4) Tb4b4b4{
Te6edf3temperatureTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3temp Tff7b72-Tff7b72>
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3tempTb4b4b4.Te6edf3isNaNTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3temperatureTb4b4b4,
Te6edf3value Tff7b72= Te6edf3tempTb4b4b4.Te6edf3toTempStringTb4b4b4(Te6edf3isFahrenheitTb4b4b4)Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3TemperatureTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Tb4b4b4}
Te6edf3relative_humidityTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3rh Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3humidityTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3rhTb4b4b4, T79c0ff0Tb4b4b4)Tffd700}Ta5d6ff%Ta5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3HumidityTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3barometric_pressureTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3bp Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3pressureTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3bpTb4b4b4, T79c0ff0Tb4b4b4)Tffd700}Ta5d6ff hPaTa5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3PressureTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3gas_resistanceTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3gr Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3gas_resistanceTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3grTb4b4b4, T79c0ff0Tb4b4b4)Tffd700}Ta5d6ff MΩTa5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3ParticulateTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3voltageTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3v Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3voltageTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3vTb4b4b4, T79c0ff2Tb4b4b4)Tffd700}Ta5d6ffVTa5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3VoltageTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3currentTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3c Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3currentTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3cTb4b4b4, T79c0ff1Tb4b4b4)Tffd700}Ta5d6ffmATa5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3PowerSupplyTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3iaqTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3i Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(Te6edf3VectorMetricInfoTb4b4b4(Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3iaqTb4b4b4, Te6edf3value Tff7b72= Te6edf3iTb4b4b4.Te6edf3toStringTb4b4b4(Tb4b4b4)Tb4b4b4, Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3AirQualityTb4b4b4)Tb4b4b4)
Tb4b4b4}
Te6edf3distanceTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3d Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3distanceTb4b4b4,
Te6edf3value Tff7b72= Te6edf3dTb4b4b4.Te6edf3toSmallDistanceStringTb4b4b4(Te6edf3displayUnitsTb4b4b4)Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3AltitudeTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3luxTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3l Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3luxTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3lTb4b4b4, T79c0ff0Tb4b4b4)Tffd700}Ta5d6ff lxTa5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3LightModeTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3uv_luxTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3uvl Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3uv_luxTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3uvlTb4b4b4, T79c0ff0Tb4b4b4)Tffd700}Ta5d6ff lxTa5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3LightModeTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3wind_speedTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3ws Tff7b72-Tff7b72>
Tf0883e@SuppressTb4b4b4(Ta5d6ff"Ta5d6ffMagicNumberTa5d6ff"Tb4b4b4)
Tff7b72val Te6edf3normalizedBearing Tff7b72= Tb4b4b4(Tb4b4b4(Te6edf3wind_direction Tff7b72?: T79c0ff0Tb4b4b4) Tff7b72+ T79c0ff1T79c0ff8T79c0ff0Tb4b4b4) Tff7b72% T79c0ff3T79c0ff6T79c0ff0
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3windTb4b4b4,
Te6edf3value Tff7b72= Te6edf3wsTb4b4b4.Te6edf3toSpeedStringTb4b4b4(Te6edf3displayUnitsTb4b4b4)Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3WindDirectionTb4b4b4,
Te6edf3rotateIcon Tff7b72= Te6edf3normalizedBearingTb4b4b4.Te6edf3toFloatTb4b4b4(Tb4b4b4)Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3weightTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3w Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3VectorMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3weightTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3wTb4b4b4, T79c0ff2Tb4b4b4)Tffd700}Ta5d6ff kgTa5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3MeshtasticIconsTb4b4b4.Te6edf3WeightTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3temperature Tff7b72!Tff7b72= Tff7b72null Tff7b72&Tff7b72& Te6edf3relative_humidity Tff7b72!Tff7b72= Tff7b72nullTb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3dewPoint Tff7b72= Te6edf3UnitConversionsTb4b4b4.Te6edf3calculateDewPointTb4b4b4(Te6edf3temperatureTff7b72!!Tb4b4b4, Te6edf3relative_humidityTff7b72!!Tb4b4b4)
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3dewPointTb4b4b4.Te6edf3isNaNTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3addTb4b4b4(
Te6edf3DrawableMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3dew_pointTb4b4b4,
Te6edf3value Tff7b72= Te6edf3dewPointTb4b4b4.Te6edf3toTempStringTb4b4b4(Te6edf3isFahrenheitTb4b4b4)Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_dew_pointTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Tb4b4b4}
Te6edf3soil_temperatureTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3st Tff7b72-Tff7b72>
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3stTb4b4b4.Te6edf3isNaNTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3addTb4b4b4(
Te6edf3DrawableMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3soil_temperatureTb4b4b4,
Te6edf3value Tff7b72= Te6edf3stTb4b4b4.Te6edf3toTempStringTb4b4b4(Te6edf3isFahrenheitTb4b4b4)Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_soil_temperatureTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Tb4b4b4}
Te6edf3soil_moistureTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3sm Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3DrawableMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3soil_moistureTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700$Te6edf3smTa5d6ff%Ta5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_soil_moistureTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3radiationTff7b72?.Te6edf3let Tb4b4b4{ Te6edf3r Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3DrawableMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3radiationTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3NumberFormatterTb4b4b4.Te6edf3formatTb4b4b4(Te6edf3rTb4b4b4, T79c0ff1Tb4b4b4)Tffd700}Ta5d6ff µR/hTa5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_radioactiveTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
T8b949e// 1-Wire temperature sensors (up to 8 channels)
Te6edf3one_wire_temperature
Tb4b4b4.Te6edf3filterNot Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3isNaNTb4b4b4(Tb4b4b4) Tb4b4b4}
Tb4b4b4.Te6edf3forEachIndexed Tb4b4b4{ Te6edf3idxTb4b4b4, Te6edf3temp Tff7b72-Tff7b72>
Te6edf3addTb4b4b4(
Te6edf3DrawableMetricInfoTb4b4b4(
Te6edf3label Tff7b72= Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3one_wire_temperatureTb4b4b4,
Te6edf3value Tff7b72= Ta5d6ff"Tffd700${Te6edf3idx Tff7b72+ T79c0ff1Tffd700}Ta5d6ff: Tffd700${Te6edf3tempTb4b4b4.Te6edf3toTempStringTb4b4b4(Te6edf3isFahrenheitTb4b4b4)Tffd700}Ta5d6ff"Tb4b4b4,
Te6edf3icon Tff7b72= Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_soil_temperatureTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Tb4b4b4}
Tb4b4b4}
Te6edf3FlowRowTb4b4b4(
Te6edf3modifier Tff7b72= Te6edf3ModifierTb4b4b4.Te6edf3fillMaxWidthTb4b4b4(Tb4b4b4)Tb4b4b4,
Te6edf3horizontalArrangement Tff7b72= Te6edf3ArrangementTb4b4b4.Te6edf3SpaceEvenlyTb4b4b4,
Te6edf3verticalArrangement Tff7b72= Te6edf3ArrangementTb4b4b4.Te6edf3SpaceEvenlyTb4b4b4,
Tb4b4b4) Tb4b4b4{
Te6edf3vectorMetricsTb4b4b4.Te6edf3forEach Tb4b4b4{ Te6edf3metric Tff7b72-Tff7b72>
Tff7b72if Tb4b4b4(Te6edf3metric Tff7b72is Te6edf3DrawableMetricInfoTb4b4b4) Tb4b4b4{
Te6edf3DrawableInfoCardTb4b4b4(
Te6edf3iconRes Tff7b72= Te6edf3metricTb4b4b4.Te6edf3iconTb4b4b4,
Te6edf3text Tff7b72= Te6edf3stringResourceTb4b4b4(Te6edf3metricTb4b4b4.Te6edf3labelTb4b4b4)Tb4b4b4,
Te6edf3value Tff7b72= Te6edf3metricTb4b4b4.Te6edf3valueTb4b4b4,
Te6edf3rotateIcon Tff7b72= Te6edf3metricTb4b4b4.Te6edf3rotateIconTb4b4b4,
Tb4b4b4)
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3metric Tff7b72is Te6edf3VectorMetricInfoTb4b4b4) Tb4b4b4{
Te6edf3InfoCardTb4b4b4(
Te6edf3icon Tff7b72= Te6edf3metricTb4b4b4.Te6edf3iconTb4b4b4,
Te6edf3text Tff7b72= Te6edf3stringResourceTb4b4b4(Te6edf3metricTb4b4b4.Te6edf3labelTb4b4b4)Tb4b4b4,
Te6edf3value Tff7b72= Te6edf3metricTb4b4b4.Te6edf3valueTb4b4b4,
Te6edf3rotateIcon Tff7b72= Te6edf3metricTb4b4b4.Te6edf3rotateIconTb4b4b4,
Tb4b4b4)
Tb4b4b4}
Tb4b4b4}
Tb4b4b4}
Tb4b4b4}

Served by rngit 1.5.0 - Generated in 0.07s